package entity;

import java.io.Serializable;
import java.util.Collection;
import java.util.Date;
import java.util.Vector;

import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;

@Entity
@Table(name="registrofabricaciones")
public class RegistroFabricacion implements Serializable
{
	private static final long serialVersionUID = 1L;

	private int codigoRegistro;
	private Date fecha;
	
	private Collection<ArticuloAFabricar> articulosafabricar = new Vector<ArticuloAFabricar>();

	public RegistroFabricacion()
	{
		this.fecha=new java.util.Date();
	}
	
	@Id
	@GeneratedValue(strategy=GenerationType.AUTO)
	public int getCodigoRegistro() {
		return codigoRegistro;
	}

	public void setCodigoRegistro(int codigoRegistro) {
		this.codigoRegistro = codigoRegistro;
	}

	public Date getFecha() {
		return fecha;
	}

	public void setFecha(Date fecha) {
		this.fecha = fecha;
	}

	@OneToMany(mappedBy="registroFabricacion", cascade=CascadeType.ALL)
	public Collection<ArticuloAFabricar> getArticulosAFabricar() {
		return articulosafabricar;
	}

	public void setArticulosAFabricar(Collection<ArticuloAFabricar> articulosafabricar) {
		this.articulosafabricar=articulosafabricar;
	}

	public void agregarArticuloAFabricar(ArticuloAFabricar articuloafabricar)
	{
		this.articulosafabricar.add(articuloafabricar);
		articuloafabricar.setRegistroFabricacion(this);
	}
}
